package com.aaa.doctor.service;


import com.aaa.doctor.vo.Dvo;
import com.aaa.doctor.vo.PatientVo;
import com.aaa.entity.Patient;
import com.aaa.entity.Registration;
import com.aaa.vo.Result;
import com.baomidou.mybatisplus.core.metadata.IPage;

import java.util.List;
import java.util.Map;


public interface PatientService {

    /**
     * 患者库--查询所有患者
     * @param currentPage
     * @param pageSize
     * @param patientVo
     * @return
     */
    Result<IPage<Patient>> getAllPatient(Integer currentPage, Integer pageSize, PatientVo patientVo);
    /**
     * 根据patientId查询档案信息 -- 两表联查
     * @param patientId
     * @return
     */
    Result<Patient> getInfoByPatientId(String patientId);

    /**
     * 根据身份证号加载患者信息
     * @param idCard
     * @return
     */
    Result<Patient> getInfoByidCard(String idCard);

    /**
     * 根据患者ID查询患者信息、档案信息、病历信息
     * @param patientId
     * @return
     */
    Result<Map<String,Object>> getAllByPatientId(String patientId);

    /**
     * 给患者挂号
     * @param patient1
     * @param patient2
     * @param a3
     * @return
     */
    Result<String> addRegistration(Patient patient1, Registration patient2, Dvo a3);
}
